package kanelboller;

import java.util.ArrayList;

public class Observable {
	private ArrayList<Joueur> listeDesJoueurs = new ArrayList<Joueur>();
	private boolean change = false;

	public void addObserverTas(Observer j) {
		listeDesJoueurs.add((Joueur) j);
	}

	public void deleteObserverTas(Observer j) {
		listeDesJoueurs.remove((Joueur) j);
	}

	public void deleteObserverTas() {
		listeDesJoueurs.removeAll(listeDesJoueurs);
	}

	public int countObserverTas() {
		return listeDesJoueurs.size();
	}

	public void clearChanged() {
		change = false;
	}

	public void setChanged() {
		change = true;
	}

	public boolean hasChanged() {
		return false;
	}

	/*
	 * public void notifyObserver(){
	 * 
	 * }
	 */

	public void notifyObserverTas(Object obj) {
		for (int i = 0; i < listeDesJoueurs.size(); i++) {
			listeDesJoueurs.get(i).updateTas((Tas)this, obj);
		}
	}

}
